From: robertl Date: Sun, 4 Apr 2010 19:20:53 +0000 (+0000) Subject: Improve support for GR-245 in Holux M241 module. X-Git-Tag: archive/raspbian/1.10.0+ds-2+rpi1~1^2~199^2~28 X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/cgi/%22https://%22%22/%22http:/www.example.com/cgi/%22https:/%22%22?a=commitdiff_plain;h=561fb058216bbecebf88f47e47027c37b25dec8e;p=gpsbabel.git Improve support for GR-245 in Holux M241 module. --- diff --git a/mtk_logger.c b/mtk_logger.c index dea987f24..db230af80 100644 --- a/mtk_logger.c +++ b/mtk_logger.c @@ -381,6 +381,7 @@ static void mtk_rd_init_m241 (const char *fname) { static void mtk_rd_init(const char *fname){ int rc; + char *model; port = xstrdup(fname); @@ -410,13 +411,28 @@ static void mtk_rd_init(const char *fname){ fatal(MYNAME ": Failed to set baudrate !\n"); } - rc = do_cmd("$PMTK605*31\r\n", "PMTK705", NULL, 10); + rc = do_cmd("$PMTK605*31\r\n", "PMTK705,", &model, 10); if ( rc != 0 ) fatal(MYNAME ": This is not a MTK based GPS ! (or is device turned off ?)\n"); + // say hello to GR245 to make it display "USB PROCESSING" + if (strstr(model, "GR-245")) { + mtk_device = HOLUX_GR245; // remember we have a GR245 for mtk_rd_deinit() + rc |= do_cmd("$PHLX810*35\r\n", "PHLX852,", NULL, 10); + rc |= do_cmd("$PHLX826*30\r\n", "PHLX859*38", NULL, 10); + if (rc != 0) + dbg(2, "Greeting not successfull.\n"); + } + xfree(model); } static void mtk_rd_deinit(void){ + if (mtk_device == HOLUX_GR245) { + int rc = do_cmd("$PHLX827*31\r\n", "PHLX860*32", NULL, 10); + if (rc != 0) + dbg(2, "Goodbye not successfull.\n"); + } + dbg(3, "Closing port...\n"); gbser_deinit(fd); fd = NULL;